package metric

import (
	"htgis/monitor/common/model"
	"htgis/monitor/module/agent/util"
)

// funcsAndInterval executes the functions in the Fs every Interval seconds
type funcsAndInterval struct {
	Fs       []func() []*model.MetricValue
	Interval int
}

// Mappers aggregates multi-types of collected information
var Mappers []funcsAndInterval

// BuildMappers builds Mappers
func BuildMappers() {
	transferInterval := util.Config().Transfer.Interval
	Mappers = []funcsAndInterval{
		{
			Fs: []func() []*model.MetricValue{
				MemMetric,
			},
			Interval: transferInterval,
		},
	}
}
